package com.ebraga.trackerclub.android.dao.api.webservice;

import java.util.List;

import com.ebraga.trackerclub.android.dao.entity.RankingAndroid;
import com.ebraga.trackerclub.android.exception.dao.BackofficeConnectionWebServicesException;
import com.ebraga.trackerclub.android.exception.dao.BackofficeIllegalArgumentDaoException;
import com.ebraga.trackerclub.android.exception.dao.BackofficeInvalidURLWebServicesException;
import com.ebraga.trackerclub.android.exception.dao.BackofficeWebServicesException;

/**
 * Provides methods to get ranking data for Android scope from server.
 */
public interface RankingWSDao {

	/**
	 * Returns a list of ranking from web server 
	 * @param parameterNameList the given parameter Name List.
	 * @return list of parameter from web server for the given parameter Name List.
	 * @throws BackofficeInvalidURLWebServicesException if the URL is invalid.
	 * @throws BackofficeConnectionWebServicesException if a connection error.
	 * @throws BackofficeIllegalArgumentDaoException if an illegal argument is found.
	 * @throws BackofficeWebServicesException if occurs another error.
	 */
	List<RankingAndroid> retrieveRanking() throws BackofficeWebServicesException, BackofficeInvalidURLWebServicesException, BackofficeConnectionWebServicesException, BackofficeIllegalArgumentDaoException;
	
}
